﻿<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WrokConfigSilverlight.aspx.cs"
    Inherits="WinnerCMS.WebUI.Admin.Gather.WrokConfigSilverlight" %>

<!DOCTYPE html >
<html>
<head runat="server">
    <title>Silverlight 版采集界面</title>
    <%: Scripts.Render("~/Scripts/AdminBase") %>

    <script type="text/javascript" src="../../Silverlight.js"></script>
    <script type="text/javascript">

        var stoplog = false;

        var vm;
        $(function () {
            vm = new ViewModel();
            ko.applyBindings(vm, $('#LogList tbody')[0]);
        });
        function ViewModel() {
            var self = this;
            self.list = ko.observableArray([]);
            self.Message = function(data) {
                self.list.unshift(data);
            }
            self.ClearLog=function() {
                self.list.removeAll();
            }
        }
        //给SL调用
        function Message(url, info, type) {
            vm.Message({
                type: type,
                time: new Date().format('hh:mm:ss:fff'),
                url: url, info: info
            });
        }
//给SL调用
        function ClearLog() { vm.ClearLog(); }

 
        function onSilverlightError(sender, args) {
            var appSource = "";
            if (sender != null && sender !== 0) {
                appSource = sender.getHost().Source;
            }

            var errorType = args.ErrorType;
            var iErrorCode = args.ErrorCode;

            if (errorType === "ImageError" || errorType === "MediaError") {
                return;
            }

            var errMsg = "Silverlight 应用程序中未处理的错误 " + appSource + "\n";

            errMsg += "代码: " + iErrorCode + "    \n";
            errMsg += "类别: " + errorType + "       \n";
            errMsg += "消息: " + args.ErrorMessage + "     \n";

            if (errorType === "ParserError") {
                errMsg += "文件: " + args.xamlFile + "     \n";
                errMsg += "行: " + args.lineNumber + "     \n";
                errMsg += "位置: " + args.charPosition + "     \n";
            }
            else if (errorType === "RuntimeError") {
                if (args.lineNumber !== 0) {
                    errMsg += "行: " + args.lineNumber + "     \n";
                    errMsg += "位置: " + args.charPosition + "     \n";
                }
                errMsg += "方法名称: " + args.methodName + "     \n";
            }
            //alert(errMsg);
            //throw new Error(errMsg);
            Message('', errMsg, 0);
        }
    </script>
    <style type="text/css">
        body {
            padding: 0;
            margin: 0;
        }

        #silverlightControlHost {
            width: 786px;
            margin-left: auto;
            margin-right: auto;
            height: 154px;
            text-align: center;
            vertical-align: top;
        }

        #LogList {
            width: 100%;
            clear: both;
        }

        label {
            cursor: pointer;
        }

        .time {
            width: 150px;
        }

    </style>
    <%: Styles.Render("~/Content/Bootstrap/css") %>
</head>
<body>
    <form id="form1" runat="server">
        <div id="silverlightControlHost">
            <object data="data:application/x-silverlight-2," type="application/x-silverlight-2"
                width="100%" height="100%">
                <param name="source" value="../../ClientBin/GatherUI.xap" />
                <param name="onError" value="onSilverlightError" />
                <param name="background" value="white" />
                <param name="minRuntimeVersion" value="4.0.50826.0" />
                <param name="autoUpgrade" value="true" />
                <param name="InitParams" value="IDs=<%= Server.UrlEncode(Request["IDs"]) %>,ModelId=<%= Request["ModelId"] %>,AdminName=<%= WinnerCMS.BLL.UserManage.Current.UserName %>,UserId=<%= WinnerCMS.BLL.UserManage.Current.UserID %>" />
                <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" style="text-decoration: none">
                    <img src="http://go.microsoft.com/fwlink/?LinkId=161376" alt="获取 Microsoft Silverlight"
                        style="border-style: none" />
                </a>
            </object>
            <iframe id="_sl_historyFrame" style="visibility: hidden; height: 0px; width: 0px; border: 0px"></iframe>
        </div>
        <table id="LogList" class="table table-bordered table-condensed table-hover">
            <thead>
                <tr style="background-color: Black; color: White; height: 26px">
                    <td style="width: 150px">时间 </td>
                    <td style="text-align: center;">信息 </td>
                </tr>
            </thead>
            <tbody data-bind="foreach: list">
                <tr>
                    <td class="time" data-bind="text: time"></td>
                    <td><a data-bind="attr: { 'href': url }, 'text': url" target="_blank"></a>
                        <br />
                        <span data-bind="text:info"></span></td>
                </tr>
            </tbody>
        </table>
    </form>

</body>
</html>
